package us.wili.dev.dao.mapper.base;

import java.util.List;
import org.apache.ibatis.annotations.Param;
import us.wili.dev.model.entity.Goods;
import us.wili.dev.model.example.GoodsExample;

public interface BaseGoodsMapper {
    int insert(Goods record);

    int batchInsert(List<Goods> records);

    int insertSelective(Goods record);

    int deleteByExample(GoodsExample example);

    int deleteByPrimaryKey(Long id);

    long countByExample(GoodsExample example);

    int updateByExampleSelective(@Param("record") Goods record, @Param("example") GoodsExample example);

    int updateByPrimaryKey(Goods record);

    int updateByPrimaryKeySelective(Goods record);

    Goods selectByPrimaryKey(@Param("id") Long id, @Param("columns") String... columns);

    Goods selectByPrimaryKeyForUpdate(@Param("id") Long id, @Param("columns") String... columns);

    Goods selectByPrimaryKeyInShareMode(@Param("id") Long id, @Param("columns") String... columns);

    List<Goods> selectByExample(GoodsExample example);

    Goods selectOneByExample(GoodsExample example);
}